package com.atguigu1.one.exer3;

import java.util.Scanner;

/**
 * ClassName: ArrayExer3
 * Package: com.atguigu1.one.exer3
 * Description:
 * 从键盘读入学生成绩，找出最高分，并输出学生成绩等级
 * 成绩>=最高分-10  等级为'A'
 * 成绩>=最高分-20  等级为'B'
 * 成绩>=最高分-30  等级为'C'
 * 其余            等级为'D'
 *
 * @Author 姜
 * @Create 2023/11/14 9:29
 * @Version 1.0
 */
public class ArrayExer3 {
    public static void main(String[] args) {
        // 1. 从键盘输入学生的人数，根据人数，创建数组（动态初始化）
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入学生人数：");
        int count = scanner.nextInt();
        int[] scores = new int[count];

        // 2. 根据提示，依次输入学生成绩，并将成绩保存在数组元素中
        System.out.println("请输入" + count + "成绩");
        int max = scores[0];
        for (int i = 0; i < scores.length; i++) {
            scores[i] = scanner.nextInt();
            // 3. 获取学生成绩的最大值
            if (scores[i] > max) {
                max = scores[i];
            }
        }

        System.out.println("最高分是：" + max);

        // 4. 遍历数组元素，根据学生成绩与最高分的差值，得到每个学生的等级，并输出成绩和等级
        char grade = 0;
        for (int i = 0; i < scores.length; i++) {
            if (scores[i] >= max - 10) {
                grade = 'A';
            } else if (scores[i] >= max - 20) {
                grade = 'B';
            } else if (scores[i] >= max - 30) {
                grade = 'C';
            } else {
                grade = 'D';
            }
            System.out.println("student " + i + " score is " + scores[i] + " grade is " + grade);
        }
        scanner.close();
    }
}
